pub fn dp_rec_mc(amount: u32) -> u32 {
    let mut remain = amount;
    let mut res = 0;
    let yuans = vec![100, 50, 30, 20, 10, 5, 2, 1];
    for yuan in yuans {
        if remain >= yuan {
            res += remain / yuan;
            remain %= yuan;
        }
    }
    res
}
